#ifndef enhpp
#define enhpp

#include "common.hpp"
#include "starSystem.hpp"
#include "basePosition.hpp"
#include "baseOrbit.hpp"

namespace en
{
	extern std::vector< std::shared_ptr<starSystem> > systemList;
	extern sf::RenderWindow systemMap;
	extern sf::View         systemView;
	extern size_t curSystem;
	extern std::weak_ptr<basePosition> cameraFocus;

	void tick(int64_t timeStep);

	void flushState();

	std::shared_ptr<starSystem> createStarSystem();

	std::shared_ptr<basePosition> createBasePosition();

	std::shared_ptr<baseOrbit> createBaseOrbit();

	void openMap();

	void snapCamera();

	void refreshDisp();
};
#endif // enhpp
